﻿using System;
using System.Collections.Generic;
using System.Text;

namespace System.Peppers.Win32
{
    /// <summary>
    /// Enumeration determining the host file to open
    /// </summary>
    public enum HostFilePath
    {
        /// <summary>
        /// %System32%\drivers\etc\hosts
        /// </summary>
        Hosts,
        /// <summary>
        /// %System32%\drivers\etc\lmhosts
        /// </summary>
        LmHosts,
    }

    /// <summary>
    /// Enumeration for applying different monitor power states for a process
    /// </summary>
    [Flags]
    public enum MonitorPowerState
    {
        /// <summary>
        /// Sets the power state back to default
        /// </summary>
        Normal = 0,
        /// <summary>
        /// Forces the system to be in the working state by resetting the system idle timer.
        /// </summary>
        SystemRequired = 0x1,
        /// <summary>
        /// Forces the display to be on by resetting the display idle timer.
        /// </summary>
        DisplayRequired = 0x2,
        /// <summary>
        /// Enables away mode. Away mode should be used only by media-recording and media-distribution applications that must perform critical background processing on desktop computers while the computer appears to be sleeping. See Remarks.
        /// *NOTE: only supported in Vista and above
        /// </summary>
        AwayMode = 0x40,
    }

    /// <summary>
    /// Enumeration of options for driver singing
    /// </summary>
    public enum DriverSigningOption : byte
    {
        /// <summary>
        /// Ignore unsigned drivers
        /// </summary>
        Ignore = 0,
        /// <summary>
        /// Warn user of unsigned drivers, (default)
        /// </summary>
        Warn = 1,
        /// <summary>
        /// Block installation of unsigned drivers
        /// </summary>
        Block = 2,
    }
}
